Color bar codes are known in the art, though they are not prevalent. U.S. Pat. No. 5,426,289 to Kinoshita et al., U.S. Pat. No. 5,992,748 to Takahashi et al., and U.S. Pat. No. 5,869,828 to Braginsky teach different kinds of color bar codes.
Typically, a color bar code system creates color bar codes using a set of set of N of bar code colors. For example, N might be 5. To make the code, each bar code color is associated with a numerical value and a color value, where the color value is in any multi-dimensional color space, such as the red, green and blue (RGB) space or the cyan, magenta, yellow and black (CMYK) space. If there are N bar code colors, the bar code that uses that color scheme represents numbers in base N. One exemplary code (in the RGB color space) might be the following:
NumericalColorRGBValueBlack0000Blue02002551Green025502Red255003Yellow25525504
In this example, there are five bar code colors and thus, the code is in base 5. Thus, a color bar code of the sequence [black, blue, green, yellow] represent the number 0124 in base 5 which translates to the base 10 number 0*125+1*25+2*5+4=39.
When printing a particular bar code, the color values of the various regions in the bar code are sent to the printer which, in turn, prints the color bar code. After printing, the color bar code is placed onto an item to be labeled. A color bar code reader is typically a color camera that includes an image sensor, such as a CCD (charge coupled device) or a CMOS (complementary metal oxide semiconductor) camera, and a relevant optical system. The reader reads the bar code and the bar code system identifies the item from the bar code. One exemplary color bar code system is discussed in PCT Publication WO 00/04711 to Shniberg et al., assigned to the common assignee of the present invention, which disclosure is incorporated herein by reference.
Unfortunately for color bar codes, a given color is not sufficiently distinct for classification from the image acquired by the reader, especially since the color perceived by the camera is affected by several parameters, such as the illumination and the spectral sensitivity of the sensor. This is discussed in the book by Wyszecki G. and Stiles W. S., Color Science: Concepts and Methods, Quantitative Data and Formulae, John Wiley & Sons, 2000, pp 117–127. Instead, colors are dependent on a multitude of effects. For example, lighting conditions affect colors significantly; as is well known, a white stripe will look purplish in ultraviolet (UV) light, slightly yellow in yellow light and slightly blue in blue light.
Thus, although bar code printer may have received the following bar code sequence for item 39 in the RGB color space: [(0,0,0), (0,200,255), (0,255,0), (255, 255,0)], the reader might produce RGB values [(10,15,15), (10,220,235), (5,200,5), (245, 245,10)] in the locations of the image associated with the color bar code. None of the image colors are the RGB colors which were printed and thus, determining which code value was read is difficult.
It will be appreciated that for simplicity and clarity of illustration, elements shown in the figures have not necessarily been drawn to scale. For example, the dimensions of some of the elements may be exaggerated relative to other elements for clarity. Further, where considered appropriate, reference numerals may be repeated among the figures to indicate corresponding or analogous elements.